package com.example.experiment03;

import androidx.appcompat.app.AppCompatActivity;

import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;



public class MainActivity extends Activity implements View.OnClickListener
{
    Button button;
    private Button bn2;
    private Button bn3;
    protected Button bn4;

    private TextView show;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    //Activity作为监听器
        show=findViewById(R.id.show);
        Button bn =findViewById(R.id.bn0);
        bn.setOnClickListener(this);

     //匿名内部类作为监听器
        bn2=(Button)findViewById(R.id.bn2);
        bn2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                show.setText("点击了采用匿名内部类作为监听器的按钮");
            }
        });


     //内部类作为监听器
        Button bn3 = findViewById(R.id.bn3);
        Bt3CLickListener bt3CLickListener= new Bt3CLickListener();
        bn3.setOnClickListener(bt3CLickListener);

    //外部类作为监听器
        bn4=(Button)findViewById(R.id.bn4);
        bn4.setOnClickListener(new MyOnClickListener(){
            public void onClick(View v){
                //调用父类的OnClick
                super.onClick(v);
                show.setText("点击了采用外部类作为监听器的按钮");
            }
        });


    //页面连接，点击按钮"系统信息"进入另一ConfigurationTest页面获取系统设备配置信息
        button=findViewById(R.id.bn6);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent n=new Intent(MainActivity.this,ConfigurationTest.class);
                startActivity(n);
            }
        });

        button=findViewById(R.id.bn7);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent n=new Intent(MainActivity.this,ProgressDialogTest.class);
                startActivity(n);
            }
        });



    }

    @Override
    public void onClick(View v) {
        show.setText("点击了采用Activity作为监听器的按钮");
    }

    //绑定到标签作为监听器
    public void clickHandler(View source){
        show.setText("点击了采用绑定到标签作为监听器的按钮");
    }

    //内部类作为监听器
    class Bt3CLickListener implements View.OnClickListener
    {  public void onClick(View v) {
        show.setText("点击了采用内部类作为监听器的按钮");
    } }


    //外部类作为监听器
    class MyOnClickListener implements View.OnClickListener{
        public void onClick(View v){
            show.setText("点击了采用内部类作为监听器的按钮");
        }
    }


    //butterknife

    @OnClick(R.id.bn5)
    public void bn5(View view) {
        show.setText("点击了使用butterknife的监听器");
    }



}


